1. Field of the Invention
The present invention relates to a network system for use in a process control system or the like, which executes data exchange between such machines coupled to a local area network (LAN) as a computer, a programmable controller (PC) and a digital instrumentation controller, and, more particularly, to a data transmission system which utilizes a token-passing bus access method, as defined by the IEEE (Institute for Electrical and Electronic Engineers) 802.4 Committee, to ensure effective transmission of data having several levels of urgency (priority) that may occur in the above-mentioned process control system or the like.
2. Description of the Related Art
Recently, rapid progress has been made with application of LAN to various fields What is receiving attention in the field of industrial LAN is MAP (Manufacturing Automation Protocol) proposed by American General Motors. The MAP is aimed to permit data exchange between different types of computers and programmable machines manufactured in different companies, and is based on the OSI (Open Systems Interconnection). The ISO (International Standardization Organization) is working on to standardize. At each level of this OSI multi-level or hierarchically-layered model, the token-passing bus, defined by the aforementioned IEEE 802.4 Committee, is used in a media access control sub-layer for data linking of lower two levels. There is another bus type LAN called CSMA/CD (Carrier Sense Multiple Access/Collision Detection) in which the individual nodes arbitrarily transmit data. According this CSMA/CD type network, when data from respective machines in the network come into collision with one another, the collision is detected and data is tried to retransmit after a transmission path becomes free. Therefore, as the quantity of machines on the network increases, the load of transmission paths increases, thus rapidly reducing the transmission efficiency.
According to a token-passing bus system, as illustrated in FIG. 12, a number of transmission devices (hereinafter called nodes) 1-1 to 1-n are coupled to a common transmission path L, and a transmission permission, called a token, is sequentially given to the individual nodes. That node, which has received the token, transmits data within a predetermined time, and a plurality of nodes do not simultaneously transmit data within the same time. Therefore, the token-passing bus type data transmission system can be said to overcome the shortcoming of the CSMA/CD type network.
The token-passing bus will be specifically described below. With the use of the taken-passing bus, the individual nodes 1-1 to 1-n are given their specific addresses in advance, and a token is sequentially shifted from the node of a large address to those of small addresses. Therefore, each node stores the address of the next node (succeeding node) to send the token to and the address of the node (preceding nodes) to receive the token from, and the token is sequentially shifted among the nodes based on these addresses. A logical ring, which has the individual nodes 1-1 to 1-n mutually coupled together, is thus constructed, as if in a ring shape. Accordingly, each node always monitors the shift flow of the token, and with the system in operation, that node, which has sent the token to another node, monitors the transmission status of the destination node and detects loss of the token to reconstruct the logical ring.
When system activating or reactivating is required due to the stant-up of the system, or due to the generation of a plurality of tokens, or failure in reception of a token, a process for contention is executed on the basis of a sorting algorithm associated with node addresses allocated to a signal-absence detecting timer and/or the individual nodes, whereby the proper logical ring is constructed. Further, with regard to intentional participation or leaving of nodes from the network, this system is provided with a function to maintain a logical ring.
According to the token-passing bus system, data to be sent by the individual nodes 1-1 to 1-n is allocated to four types of access levels in accordance with the desired transmission priority, and priority process is executed based on the token-passing bus priority algorithm defined by the IEEE 802.4. In this process, four access levels, 6, 4, 2, and 0 are provided, with 6 the highest and 4, 2, and 0 getting lower in that order. As a result, four request queues can be provided with respect to data that is on a transmission queue.
That is, upon reception of a token, a node sets a token hold time, defined by the token-passing bus, as a timer initialized value, in a token hold timer, and the transmits data with access level 6. After data transmission, the node checks whether or not a transmission queue is empty. If there is no more data to be transmitted or if the token hold time has been reached, the token is given to data with the next lower access level 4. For transmission of data with access levels 4, 2, and 0, the time required for the token to go around within the logical ring is measured so that data can be transmitted before the target token rotation time given to each access level is reached. When the token returns after the target token rotation time has elapsed, data cannot be transmitted. In this case the token is given to data with the next lower access level or to the next node.
In other words, the priority processing algorithm is provided with the token hold timer and the target token rotation timer, and with the highest priority access level, the token hold time is set, as the initial value, in the token hold timer. With a lower priority access level, however, the time remaining in the target token rotation timer is set in the token hold timer, and the target token rotation time is re-set in the target token rotation timer.
In this case, data transmission from a local node also affects the next token time. When the remaining time stored in the token hold timer is positive, data from a queue can be transmitted until the token hold time is expired or until the queue becomes empty. When time-out of the token hold timer occurs or when the queue becomes empty, a service for the next lower access begins. Upon completion of a service for the lowest access level, necessary procedures for maintaining the logical ring are executed and the token is given to the succeeding node. In this manner, the individual access levels work as virtual sub nodes within each node, and the token is given to the succeeding node after being passed around among all the access levels from the highest priority access level to the lowest one.
With a data transmission using the token passing system, a node executes data exchange with another node by transmitting command data to a node that is destined for the data exchange and then by receiving response data from the destination node. With the use of a typical MAP using a token passing bus access method, it is possible to link machines having various intelligent functions for each factory floor to ensure economical and consistent communication. For those among the machines such as a PC (Programmable Controller), a manipulator, and a CNC (Computer-implemented Numeric Controlled machining apparatus), data to be transmitted over the token-passing bus are mainly production control data and maintenance control data.
Along with progress in applying a network to factory automation (FA) for these discrete-part oriented equipment, there is demand for applying such network further to sequential process control systems having properties different from those of FA so as to provide a unified LAN. In sequential process control, however, real time operation is far more important than what is required in FA. For instance, in FA, the response time for a transmission function required for the PC or the like needs simply be about several seconds, but the response time in sequential process control needs to be in the order of several tens of msec. Further, in a distributed-control type process control system which belongs to the field of industrial application of this invention and in which a computer, PC, DCS (Distributed Control System), etc. are coupled to a network, data exchanged among these units includes data with a significantly high urgency required for every PC control cycle of several tens of msec, data required for DCS manipulation or alarm monitoring for every several hundreds of msec, instrumentation data with a lower urgency, data involved in program down loading which is processed in the background, production control data, or maintenance control data.
If a LAN that meets the conditions for coupling the aforementioned machines such as a computer, PC, and DCS can be constructed using the token-passing bus which is a potential standard for LAN, it is possible to make the best use of the inherent characteristics of a token-passing bus access method, i.e., reliability, self-recovering, and expandability, thus further increasing the number of applications of the token-passing bus access method.
When the aforementioned machines, such as a computer, PC, and DCS, are coupled to a token-passing bus, however, the following problems would be raised. There are two types of data that is exchanged between machines: data periodically generated with a cycle of a unit time corresponding to the aforementioned urgency, and data generated in response to unexpected transmission request. It is therefore necessary for each of nodes 1-1 to 1-n to periodically execute transmission control of data of each access level within a time corresponding to the urgency, and it is necessary for each machine to receive and latch the data for each cycle to update and utilize it. Further, although transmission data needs to be transmitted from higher priority data to lower one in accordance with the priority of the individual access levels, it is difficult for the current IEEE 802.4 token-passing bus access method to meet the above demands. This means that it is difficult to apply the token-passing bus access method to a process control system that contains a variety of machines mentioned above.